package org.jeecg.modules.ilang.entity;

import com.baomidou.mybatisplus.annotation.IdType
import com.baomidou.mybatisplus.annotation.TableId
import com.baomidou.mybatisplus.annotation.TableName
import com.fasterxml.jackson.annotation.JsonFormat
import io.swagger.annotations.ApiModel
import io.swagger.annotations.ApiModelProperty
import org.jeecgframework.poi.excel.annotation.Excel
import org.springframework.format.annotation.DateTimeFormat
import java.util.*

/**
 * @Description: 系统参数
 * @Author: Allen
 * @Date:   2020-12-22
 * @Version: V1.0
 */
@TableName("ilang_sys_params")
@ApiModel(value = "ilang_sys_params对象", description = "系统参数")
data class SysParams(

    /**
     * 主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    var id: String? = null,
    /**
     * 参数编码
     */
    @Excel(name = "参数编码", width = 15.0)
    @ApiModelProperty(value = "参数编码")
    var paramCode: String? = null,
    /**
     * 参数名称
     */
    @Excel(name = "参数名称", width = 15.0)
    @ApiModelProperty(value = "参数名称")
    var paramName: String? = null,
    /**
     * 参数值
     */
    @Excel(name = "参数值", width = 15.0)
    @ApiModelProperty(value = "参数值")
    var paramValue: String? = null,
    /**
     * 创建人
     */
    @Excel(name = "创建人", width = 15.0)
    @ApiModelProperty(value = "创建人")
    var createBy: String? = null,
    /**
     * 创建日期
     */
    @Excel(name = "创建日期", width = 20.0, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    var createTime: Date? = null,
    /**
     * 更新人
     */
    @Excel(name = "更新人", width = 15.0)
    @ApiModelProperty(value = "更新人")
    var updateBy: String? = null,
    /**
     * 更新日期
     */
    @Excel(name = "更新日期", width = 20.0, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    var updateTime: Date? = null
)
{
    companion object
    {
        const val COL_ID = "id"
        const val COL_PARAM_CODE = "param_code"
        const val COL_PARAM_NAME = "param_name"
        const val COL_PARAM_VALUE = "param_value"
        const val COL_CREATE_BY = "create_by"
        const val COL_CREATE_TIME = "create_time"
        const val COL_UPDATE_BY = "update_by"
        const val COL_UPDATE_TIME = "update_time"
    }
}
